1. Field of the Invention
The present invention relates to a method of synthesizing a musical instrument digital interface (MIDI) file using wave table.
2. Description of the Related Art
MIDI is a standard of representing musical data when synthesizing music. MIDI includes data on the type of musical instrument to be used, a pitch, a note duration, and other basic musical data, as well as data on how to represent the sound of the musical instrument. Methods of using musical data in MIDI format to produce actual synthesized sound are divided largely into frequency modulation (FM) synthesis and wave table synthesis. An FM synthesis method extracts frequency data of sounds that are made by each instrument, and creates signals for those frequencies in the synthesizing process. The wave table synthesis method precedent derives and stores a sample of sounds made by each musical instrument during a performance, and processes the stored samples for each instrument according to the musical data described in a MIDI file and synthesizes sound.
When synthesizing sound in the wave table method, actual sound samples of each instrument during a performance are used to modulate pitch, alter note lengths, and apply sound representations to create sound, based on musical data described in a MIDI file, such as pitch, note length, sound representation, etc. When acquiring and storing sound samples of musical instruments in a wave table, supplementary data such as change of volume of a sample sound over time, articulation data of small changes in frequency, the presence of a loop segment, a starting point of a loop segment, and length of a loop segment is stored. When the sounds are synthesized, the above data is reflected in the created sounds.
A wave table used for wave table sound synthesizing adopts a specific method for maintaining compatibility between various devices used for synthesizing. A common method is the downloadable sound (DLS) method. A DLS type wave table storage format regulates how sampling data of instruments and articulation data will be stored. For example, a sampling of an instrument can be designated to be stored in a WAVE format (which is an audio data storage format).
The process of synthesizing sound in a wave table method uses sound samples derived from each instrument during an actual performance and corresponding to a MIDI file or supplemental data of a wave table to recreate the sound. Here, when the sound samples taken from an actual performance are stored, the size of the wave table increases. However, the tendency of a performed note settling and repeating in a sustain section is utilized by a wave table so that when a sound source is stored, only signals in a section up to a point of repetition are stored. The repetitive section is called a loop segment, whose location in time and length are additionally stored. When a MIDI file is actually played, the loop segment is repeatedly played back. Depending on the characteristics of an instrument, a loop may be applicable or a playback may end with a one-shot sound. By using this loop segment, the size of a wave table can be reduced.
The process of synthesizing sound using a wave table method creates sound using performed sound samples of each instrument and supplementary data of a MIDI file or a wave table. Although it would be desirable for a wave table to include all the data corresponding to each sound in a MIDI file, because the size of the wave table would increase, the normal practice is to allot sounds of each instrument into a few segments and oscillate and use a sound in a segment to correspond to a note in the MIDI file. Even when using a loop segment, the storage space of a wave table is insufficient.